[INFO] fetching crate rmqtt-bridge-egress-nats 0.21.0...
[INFO] fixing rmqtt-bridge-egress-nats-0.21.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate rmqtt-bridge-egress-nats 0.21.0 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate rmqtt-bridge-egress-nats 0.21.0
[INFO] finished tweaking crates.io crate rmqtt-bridge-egress-nats 0.21.0
[INFO] tweaked toml for crates.io crate rmqtt-bridge-egress-nats 0.21.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rmqtt-bridge-egress-nats 0.21.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rmqtt-bridge-egress-nats 0.21.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea
[INFO] running `Command { std: "docker" "start" "d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking log v0.4.30
[INFO] [stderr]     Checking rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling derive-where v1.6.1
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling doc-comment v0.3.4
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking dashmap v6.2.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling proc-macro-utils v0.8.0
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]    Compiling quinn-udp v0.5.14
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling interpolator v0.5.0
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking dequemap v0.2.2
[INFO] [stderr]    Compiling collection_literals v1.0.3
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking std-ext v0.3.2
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking bytestring v1.5.1
[INFO] [stderr]    Compiling quote-use-macros v0.7.2
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling quinn v0.11.9
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking fastbloom v0.14.1
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]     Checking winnow v1.0.3
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]     Checking waker-fn v1.2.0
[INFO] [stderr]     Checking lru-slab v0.1.2
[INFO] [stderr]     Checking fastrand v1.9.0
[INFO] [stderr]     Checking nonzero_ext v0.3.0
[INFO] [stderr]     Checking box-counter v0.3.0
[INFO] [stderr]     Checking pin-project v1.1.13
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]     Checking futures-lite v1.13.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]    Compiling quote-use v0.7.2
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking raw-cpuid v11.6.0
[INFO] [stderr]     Checking toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking rmqtt-utils v0.1.4
[INFO] [stderr]     Checking serde_spanned v1.1.1
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking signatory v0.27.1
[INFO] [stderr]     Checking http v1.4.1
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking spinning_top v0.3.0
[INFO] [stderr]     Checking web-time v1.1.0
[INFO] [stderr]     Checking bytesize v1.3.3
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking prometheus v0.13.4
[INFO] [stderr]     Checking rustls-native-certs v0.7.3
[INFO] [stderr]     Checking uuid v1.23.1
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking quanta v0.12.6
[INFO] [stderr]     Checking nkeys v0.4.5
[INFO] [stderr]     Checking nuid v0.5.0
[INFO] [stderr]     Checking serde_nanos v0.1.4
[INFO] [stderr]    Compiling rmqtt-macros v0.1.1
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling attribute-derive-macro v0.6.1
[INFO] [stderr]    Compiling snafu-derive v0.6.10
[INFO] [stderr]     Checking toml v1.1.2+spec-1.1.0
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]    Compiling rmqtt v0.21.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling prost-derive v0.13.5
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking rustls-webpki v0.102.8
[INFO] [stderr]     Checking systemstat v0.2.6
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking config v0.15.23
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking governor v0.10.4
[INFO] [stderr]    Compiling attribute-derive v0.6.1
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking snafu v0.6.10
[INFO] [stderr]     Checking queue-ext v0.4.1
[INFO] [stderr]     Checking mpsc v0.2.6
[INFO] [stderr]     Checking proxy-protocol v0.5.0
[INFO] [stderr]    Compiling get-size-derive v0.1.3
[INFO] [stderr]     Checking task-exec-queue v0.9.3
[INFO] [stderr]     Checking get-size v0.1.4
[INFO] [stderr]     Checking prost v0.13.5
[INFO] [stderr]     Checking rust-box v0.15.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tryhard v0.5.2
[INFO] [stderr]     Checking leaky-bucket v1.1.2
[INFO] [stderr]     Checking rmqtt-codec v0.2.2
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking quinn-proto v0.11.14
[INFO] [stderr]     Checking tokio-websockets v0.10.1
[INFO] [stderr]     Checking async-nats v0.38.0
[INFO] [stderr]     Checking rmqtt-net v0.3.5
[INFO] [stderr]     Checking rmqtt-bridge-egress-nats v0.21.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:147:31
[INFO] [stdout]      |
[INFO] [stdout]  147 |         while let Some(cmd) = rx.recv().await {
[INFO] [stdout]      |                        ---    ^^^^^^^^^^-----
[INFO] [stdout]      |                        |      |         |
[INFO] [stdout]      |                        |      |         this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                        |      |         up until Edition 2021 `#13` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        |      |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        |      this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                        |      up until Edition 2021 `#12` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |      `__awaitee` calls a custom destructor
[INFO] [stdout]      |                        |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        `cmd` calls a custom destructor
[INFO] [stdout]      |                        `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  150 |                     if let Err(e) = producer.flush().await {
[INFO] [stdout]      |                                -    ----------------------
[INFO] [stdout]      |                                |    |                |
[INFO] [stdout]      |                                |    |                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                |    |                `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                |    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |    `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  153 |                     if let Err(e) = producer.close().await {
[INFO] [stdout]      |                                -    ----------------------
[INFO] [stdout]      |                                |    |                |
[INFO] [stdout]      |                                |    |                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                |    |                `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                |    `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  159 |                 Command::Message(f, p) => {
[INFO] [stdout]      |                                  -
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  `f` calls a custom destructor
[INFO] [stdout]      |                                  `f` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  170 |                         properties.insert("from_username", f.username().as_ref());
[INFO] [stdout]      |                                                            ------------
[INFO] [stdout]      |                                                            |
[INFO] [stdout]      |                                                            this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                            `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  186 |                     if let Err(e) =
[INFO] [stdout]      |                                -
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                                `#11` will be dropped later as of Edition 2024
[INFO] [stdout]  187 |                         jetstream.publish_with_headers(topic.clone(), properties, p.take_payload()).await
[INFO] [stdout]      |                         ---------------------------------------------------------------------------------
[INFO] [stdout]      |                         |                                                                           |
[INFO] [stdout]      |                         |                                                                           this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                         |                                                                           `#10` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  193 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `f` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/sync/oneshot.rs:1245:1
[INFO] [stdout]      |
[INFO] [stdout] 1245 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/lib.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:268:29
[INFO] [stdout]      |
[INFO] [stdout]  265 |         for mut entry in &mut self.sinks.iter_mut() {
[INFO] [stdout]      |             ---------    --------------------------
[INFO] [stdout]      |             |            |
[INFO] [stdout]      |             |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |             |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |             `entry` calls a custom destructor
[INFO] [stdout]      |             `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  268 |             if let Err(e) = producer.tx.send(Command::Close).await {
[INFO] [stdout]      |                        -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                        |    |                                |
[INFO] [stdout]      |                        |    |                                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                        |    |                                up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |    |                                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                        |    |                                `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        |    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                        |    up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                        |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        `e` calls a custom destructor
[INFO] [stdout]      |                        `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  271 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:283:47
[INFO] [stdout]      |
[INFO] [stdout]  283 |         for (topic_filter, bridge_infos) in { self.topics.read().await.matches(&topic) }.iter() {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                               |                  |
[INFO] [stdout]      |                                               |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                               |                  up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  284 |             let topic_filter = topic_filter.to_topic_filter();
[INFO] [stdout]      |                 ------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `topic_filter` calls a custom destructor
[INFO] [stdout]      |                 `topic_filter` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  288 |                 if let Some(producer) = self.sinks.get(&(name.clone(), *entry_idx)) {
[INFO] [stdout]      |                             --------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `producer` calls a custom destructor
[INFO] [stdout]      |                             `producer` will be dropped later as of Edition 2024
[INFO] [stdout]  289 |                     if let Err(e) = producer.send(f, p, &topic).await {
[INFO] [stdout]      |                                -    ---------------------------------
[INFO] [stdout]      |                                |    |                           |
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  294 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `topic_filter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `producer` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:289:37
[INFO] [stdout]      |
[INFO] [stdout]  284 |             let topic_filter = topic_filter.to_topic_filter();
[INFO] [stdout]      |                 ------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `topic_filter` calls a custom destructor
[INFO] [stdout]      |                 `topic_filter` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  288 |                 if let Some(producer) = self.sinks.get(&(name.clone(), *entry_idx)) {
[INFO] [stdout]      |                             --------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `producer` calls a custom destructor
[INFO] [stdout]      |                             `producer` will be dropped later as of Edition 2024
[INFO] [stdout]  289 |                     if let Err(e) = producer.send(f, p, &topic).await {
[INFO] [stdout]      |                                -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |    |                           |
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |    |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                |    up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  292 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `topic_filter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `producer` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:288:41
[INFO] [stdout]      |
[INFO] [stdout]  284 |             let topic_filter = topic_filter.to_topic_filter();
[INFO] [stdout]      |                 ------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `topic_filter` calls a custom destructor
[INFO] [stdout]      |                 `topic_filter` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  288 |                 if let Some(producer) = self.sinks.get(&(name.clone(), *entry_idx)) {
[INFO] [stdout]      |                             --------    ^^^^^^^^^^^^^^^^--------------------------^
[INFO] [stdout]      |                             |           |               |
[INFO] [stdout]      |                             |           |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                             |           |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             |           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             `producer` calls a custom destructor
[INFO] [stdout]      |                             `producer` will be dropped later as of Edition 2024
[INFO] [stdout]  289 |                     if let Err(e) = producer.send(f, p, &topic).await {
[INFO] [stdout]      |                                -    ---------------------------------
[INFO] [stdout]      |                                |    |                           |
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  293 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `topic_filter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `producer` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bridge.rs:283:47
[INFO] [stdout]     |
[INFO] [stdout] 283 |         for (topic_filter, bridge_infos) in { self.topics.read().await.matches(&topic) }.iter() {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^                   ---- borrow later used by call
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               this temporary value will be dropped at the end of the block
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:55:35
[INFO] [stdout]      |
[INFO] [stdout]   55 |                             match bridge_mgr.start().await { Err(e) => {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^-----       -
[INFO] [stdout]      |                                   |                  |           |
[INFO] [stdout]      |                                   |                  |           `e` calls a custom destructor
[INFO] [stdout]      |                                   |                  |           `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                   |                  up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                   |                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   56 |                                 log::error!("start bridge-egress-nats error, {e:?}");
[INFO] [stdout]   57 |                                 tokio::time::sleep(Duration::from_secs(3)).await;
[INFO] [stdout]      |                                 ------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   62 |                         },
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:55:35
[INFO] [stdout]      |
[INFO] [stdout]   52 |                 while let Some(cmd) = bridge_mgr_cmd_rx.recv().await {
[INFO] [stdout]      |                                ---    ------------------------------
[INFO] [stdout]      |                                |      |                        |
[INFO] [stdout]      |                                |      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |      |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |      `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `cmd` calls a custom destructor
[INFO] [stdout]      |                                `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   55 |                             match bridge_mgr.start().await { Err(e) => {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^-----       -
[INFO] [stdout]      |                                   |                  |           |
[INFO] [stdout]      |                                   |                  |           `e` calls a custom destructor
[INFO] [stdout]      |                                   |                  |           `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |                  up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   |                  `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]   56 |                                 log::error!("start bridge-egress-nats error, {e:?}");
[INFO] [stdout]   57 |                                 tokio::time::sleep(Duration::from_secs(3)).await;
[INFO] [stdout]      |                                 ------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   62 |                         },
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]   63 |                         Command::Close => {
[INFO] [stdout]   64 |                             bridge_mgr.stop().await;
[INFO] [stdout]      |                             -----------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:52:39
[INFO] [stdout]      |
[INFO] [stdout]   52 |                 while let Some(cmd) = bridge_mgr_cmd_rx.recv().await {
[INFO] [stdout]      |                                ---    ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |      |                        |
[INFO] [stdout]      |                                |      |                        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                |      |                        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |      |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |      this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                |      up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |      `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `cmd` calls a custom destructor
[INFO] [stdout]      |                                `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   55 |                             match bridge_mgr.start().await { Err(e) => {
[INFO] [stdout]      |                                   ------------------------       -
[INFO] [stdout]      |                                   |                  |           |
[INFO] [stdout]      |                                   |                  |           `e` calls a custom destructor
[INFO] [stdout]      |                                   |                  |           `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   |                  `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]   56 |                                 log::error!("start bridge-egress-nats error, {e:?}");
[INFO] [stdout]   57 |                                 tokio::time::sleep(Duration::from_secs(3)).await;
[INFO] [stdout]      |                                 ------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   64 |                             bridge_mgr.stop().await;
[INFO] [stdout]      |                             -----------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   68 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:147:31
[INFO] [stdout]      |
[INFO] [stdout]  147 |         while let Some(cmd) = rx.recv().await {
[INFO] [stdout]      |                        ---    ^^^^^^^^^^-----
[INFO] [stdout]      |                        |      |         |
[INFO] [stdout]      |                        |      |         this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                        |      |         up until Edition 2021 `#13` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        |      |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        |      this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                        |      up until Edition 2021 `#12` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |      `__awaitee` calls a custom destructor
[INFO] [stdout]      |                        |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        `cmd` calls a custom destructor
[INFO] [stdout]      |                        `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  150 |                     if let Err(e) = producer.flush().await {
[INFO] [stdout]      |                                -    ----------------------
[INFO] [stdout]      |                                |    |                |
[INFO] [stdout]      |                                |    |                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                |    |                `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                |    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |    `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  153 |                     if let Err(e) = producer.close().await {
[INFO] [stdout]      |                                -    ----------------------
[INFO] [stdout]      |                                |    |                |
[INFO] [stdout]      |                                |    |                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                |    |                `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                |    `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  159 |                 Command::Message(f, p) => {
[INFO] [stdout]      |                                  -
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  `f` calls a custom destructor
[INFO] [stdout]      |                                  `f` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  170 |                         properties.insert("from_username", f.username().as_ref());
[INFO] [stdout]      |                                                            ------------
[INFO] [stdout]      |                                                            |
[INFO] [stdout]      |                                                            this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                            `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  186 |                     if let Err(e) =
[INFO] [stdout]      |                                -
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                                `#11` will be dropped later as of Edition 2024
[INFO] [stdout]  187 |                         jetstream.publish_with_headers(topic.clone(), properties, p.take_payload()).await
[INFO] [stdout]      |                         ---------------------------------------------------------------------------------
[INFO] [stdout]      |                         |                                                                           |
[INFO] [stdout]      |                         |                                                                           this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                         |                                                                           `#10` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  193 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `f` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/sync/oneshot.rs:1245:1
[INFO] [stdout]      |
[INFO] [stdout] 1245 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:268:29
[INFO] [stdout]      |
[INFO] [stdout]  265 |         for mut entry in &mut self.sinks.iter_mut() {
[INFO] [stdout]      |             ---------    --------------------------
[INFO] [stdout]      |             |            |
[INFO] [stdout]      |             |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |             |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |             `entry` calls a custom destructor
[INFO] [stdout]      |             `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  268 |             if let Err(e) = producer.tx.send(Command::Close).await {
[INFO] [stdout]      |                        -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                        |    |                                |
[INFO] [stdout]      |                        |    |                                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                        |    |                                up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |    |                                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                        |    |                                `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        |    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                        |    up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                        |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                        `e` calls a custom destructor
[INFO] [stdout]      |                        `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  271 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1827:1
[INFO] [stdout]      |
[INFO] [stdout] 1827 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockWriteGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:283:47
[INFO] [stdout]      |
[INFO] [stdout]  283 |         for (topic_filter, bridge_infos) in { self.topics.read().await.matches(&topic) }.iter() {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                               |                  |
[INFO] [stdout]      |                                               |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                               |                  up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  284 |             let topic_filter = topic_filter.to_topic_filter();
[INFO] [stdout]      |                 ------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `topic_filter` calls a custom destructor
[INFO] [stdout]      |                 `topic_filter` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  288 |                 if let Some(producer) = self.sinks.get(&(name.clone(), *entry_idx)) {
[INFO] [stdout]      |                             --------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `producer` calls a custom destructor
[INFO] [stdout]      |                             `producer` will be dropped later as of Edition 2024
[INFO] [stdout]  289 |                     if let Err(e) = producer.send(f, p, &topic).await {
[INFO] [stdout]      |                                -    ---------------------------------
[INFO] [stdout]      |                                |    |                           |
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  294 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `topic_filter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `producer` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:289:37
[INFO] [stdout]      |
[INFO] [stdout]  284 |             let topic_filter = topic_filter.to_topic_filter();
[INFO] [stdout]      |                 ------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `topic_filter` calls a custom destructor
[INFO] [stdout]      |                 `topic_filter` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  288 |                 if let Some(producer) = self.sinks.get(&(name.clone(), *entry_idx)) {
[INFO] [stdout]      |                             --------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `producer` calls a custom destructor
[INFO] [stdout]      |                             `producer` will be dropped later as of Edition 2024
[INFO] [stdout]  289 |                     if let Err(e) = producer.send(f, p, &topic).await {
[INFO] [stdout]      |                                -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |    |                           |
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |    |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                |    up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  292 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `topic_filter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `producer` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bridge.rs:288:41
[INFO] [stdout]      |
[INFO] [stdout]  284 |             let topic_filter = topic_filter.to_topic_filter();
[INFO] [stdout]      |                 ------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `topic_filter` calls a custom destructor
[INFO] [stdout]      |                 `topic_filter` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  288 |                 if let Some(producer) = self.sinks.get(&(name.clone(), *entry_idx)) {
[INFO] [stdout]      |                             --------    ^^^^^^^^^^^^^^^^--------------------------^
[INFO] [stdout]      |                             |           |               |
[INFO] [stdout]      |                             |           |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                             |           |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             |           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             `producer` calls a custom destructor
[INFO] [stdout]      |                             `producer` will be dropped later as of Edition 2024
[INFO] [stdout]  289 |                     if let Err(e) = producer.send(f, p, &topic).await {
[INFO] [stdout]      |                                -    ---------------------------------
[INFO] [stdout]      |                                |    |                           |
[INFO] [stdout]      |                                |    |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |    `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `e` calls a custom destructor
[INFO] [stdout]      |                                `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  293 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `topic_filter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `producer` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/rwlock.rs:1432:1
[INFO] [stdout]      |
[INFO] [stdout] 1432 | impl<'a, R: RawRwLock + 'a, T: ?Sized + 'a> Drop for RwLockReadGuard<'a, R, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bridge.rs:283:47
[INFO] [stdout]     |
[INFO] [stdout] 283 |         for (topic_filter, bridge_infos) in { self.topics.read().await.matches(&topic) }.iter() {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^                   ---- borrow later used by call
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               this temporary value will be dropped at the end of the block
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:55:35
[INFO] [stdout]      |
[INFO] [stdout]   55 |                             match bridge_mgr.start().await { Err(e) => {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^-----       -
[INFO] [stdout]      |                                   |                  |           |
[INFO] [stdout]      |                                   |                  |           `e` calls a custom destructor
[INFO] [stdout]      |                                   |                  |           `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                   |                  up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                   |                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   56 |                                 log::error!("start bridge-egress-nats error, {e:?}");
[INFO] [stdout]   57 |                                 tokio::time::sleep(Duration::from_secs(3)).await;
[INFO] [stdout]      |                                 ------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   62 |                         },
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:55:35
[INFO] [stdout]      |
[INFO] [stdout]   52 |                 while let Some(cmd) = bridge_mgr_cmd_rx.recv().await {
[INFO] [stdout]      |                                ---    ------------------------------
[INFO] [stdout]      |                                |      |                        |
[INFO] [stdout]      |                                |      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |      |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |      `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `cmd` calls a custom destructor
[INFO] [stdout]      |                                `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   55 |                             match bridge_mgr.start().await { Err(e) => {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^-----       -
[INFO] [stdout]      |                                   |                  |           |
[INFO] [stdout]      |                                   |                  |           `e` calls a custom destructor
[INFO] [stdout]      |                                   |                  |           `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |                  up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   |                  `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]   56 |                                 log::error!("start bridge-egress-nats error, {e:?}");
[INFO] [stdout]   57 |                                 tokio::time::sleep(Duration::from_secs(3)).await;
[INFO] [stdout]      |                                 ------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   62 |                         },
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]   63 |                         Command::Close => {
[INFO] [stdout]   64 |                             bridge_mgr.stop().await;
[INFO] [stdout]      |                             -----------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/lib.rs:52:39
[INFO] [stdout]      |
[INFO] [stdout]   52 |                 while let Some(cmd) = bridge_mgr_cmd_rx.recv().await {
[INFO] [stdout]      |                                ---    ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |      |                        |
[INFO] [stdout]      |                                |      |                        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                |      |                        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |      |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |      this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                |      up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |      `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `cmd` calls a custom destructor
[INFO] [stdout]      |                                `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   55 |                             match bridge_mgr.start().await { Err(e) => {
[INFO] [stdout]      |                                   ------------------------       -
[INFO] [stdout]      |                                   |                  |           |
[INFO] [stdout]      |                                   |                  |           `e` calls a custom destructor
[INFO] [stdout]      |                                   |                  |           `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   |                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   |                  `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]   56 |                                 log::error!("start bridge-egress-nats error, {e:?}");
[INFO] [stdout]   57 |                                 tokio::time::sleep(Duration::from_secs(3)).await;
[INFO] [stdout]      |                                 ------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   64 |                             bridge_mgr.stop().await;
[INFO] [stdout]      |                             -----------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   68 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 45.01s
[INFO] [stderr] crater-edition-check: rmqtt-bridge-egress-nats v0.21.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking rmqtt-bridge-egress-nats v0.21.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/bridge.rs:283:47
[INFO] [stdout]     |
[INFO] [stdout] 283 |         for (topic_filter, bridge_infos) in { self.topics.read().await.matches(&topic) }.iter() {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^               -   ---- borrow later used by call
[INFO] [stdout]     |                                               |                                      |
[INFO] [stdout]     |                                               |                                      temporary value is freed at the end of this statement
[INFO] [stdout]     |                                               creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0716]: temporary value dropped while borrowed
[INFO] [stdout]    --> src/bridge.rs:283:47
[INFO] [stdout]     |
[INFO] [stdout] 283 |         for (topic_filter, bridge_infos) in { self.topics.read().await.matches(&topic) }.iter() {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^               -   ---- borrow later used by call
[INFO] [stdout]     |                                               |                                      |
[INFO] [stdout]     |                                               |                                      temporary value is freed at the end of this statement
[INFO] [stdout]     |                                               creates a temporary value which is freed while still in use
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using a `let` binding to create a longer lived value
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rmqtt-bridge-egress-nats` (lib) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rmqtt-bridge-egress-nats` (lib test) due to 1 previous error
[INFO] [stdout] For more information about this error, try `rustc --explain E0716`.
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea", kill_on_drop: false }`
[INFO] [stdout] d0ef38a00321df482ca54268f7b817ce25752a78107d1bfe2f2257d6033c30ea
